package vg.services.graph_view_manager.interfaces;

import vg.services.data_base_manager.data.graph.Graph;
import vg.services.graph_view_manager.interfaces.graph_comparison.AGraphComparison;
import vg.services.graph_view_manager.interfaces.graph_view.AGraphView;

public interface IGraphViewManager {
//=============================================================================
//-----------------Setters-----------------------------------------------------
	public boolean setGraphViewClass(Class<AGraphView> clazz);
	public boolean setGraphComparisonViewClass(Class<AGraphComparison> clazz);

//=============================================================================
//-----------------Methods for creating graph view components------------------
	/**
	 * Creates graph view.
	 */
	public AGraphView newGraphView(Graph g);
	
	/**
	 * Creates graph view.
	 */
	public AGraphView newGraphView(AGraphView graphView, Graph graph);
	
	/**
	 * Create graph comparison view
	 * @param g1 - first graph
	 * @param g2 - second graph
	 */
	public AGraphComparison newGraphComparison(Graph g1, Graph g2);	
}
